<?php
require_once 'BaseController.php';

/**
 * 【PC版】各種問い合わせ コントローラ
 */
class Renew_EtccnfController extends Renew_BaseController
{

    /**
     * メインアクション
     */
    public function indexAction()
    {
        $params = $this->getParameters();
        $step = $params["Step"];

        if (empty($step))
        {
            $this->displayBody2('index');
        }
        else if ($step == 1)
        {
            $this->displayBody2('entry');
        }
        else if ($step == 'complete')
        {
            $this->displayBody2('complete');
        }
    }

    public function postAction()
    {
        $params = $this->getParameters();
        $step = $params["Step"];

        $this->_data['params'] = $params;

        if ($step == 2)
        {
            if ($this->checkParams($params, $code))
            {
                // 入力にエラーがある場合、エラー画面へ遷移
                $this->displayBody2('error');
            }
            else
            {
                // 入力にエラーがない場合、確認画面へ遷移
                $this->displayBody2('confirm');
            }
        }
        else if ($step == 3)
        {
            $cparams = array();
            $cparams['Tel'] = $params['Tel'];
            $cparams['Mail'] = $params['Mail'];
            $cparams['vintGenruFlg'] = 0;
            $cparams['NameSei'] = $params['KanjiSei'];
            $cparams['NameMei'] = $params['KanjiMei'];
            // 20141128 S_Add
            $cparams['NameSeiKana'] = $params['KanaSei'];
            $cparams['NameMeiKana'] = $params['KanaMei'];
            // 20141128 E_Add

            $list = $this->extractParams($params, 'check');
            if (array_key_exists('check1', $params)) $cparams['Inquiry1'] = 1;
            if (array_key_exists('check2', $params)) $cparams['Inquiry3'] = 1;
            if (array_key_exists('check3', $params)) $cparams['Inquiry2'] = 1;
            if (array_key_exists('check4', $params)) $cparams['Inquiry4'] = 1;

            // キャンペーン
            $list = $this->extractParams($params, 'campaign');
            $cparams['CampaignAgechau'] = join(';', $list);

            // 20141211 S_Add
            $cparams['Name'] = $params['KanjiSei'] . "　" . $params['KanjiMei']; // 名前
            $cparams['NameKana'] = $params['KanaSei'] . "　" . $params['KanaMei']; // 名前カナ
            $cparams['TargetKbn'] = $params['Target']; // 対象区分
            $cparams['ClaimTgtKbn'] = $params['Target']; // クレーム対象区分
            $cparams['ShopName'] = $params['ShopName']; // 店舗名称
            $cparams['Charge'] = $params['StaffName']; // 担当者
                                                         // 20141211 E_Add

            $cparams['TenpoNm'] = $params['ShopName']; // 店舗名称 20150202 Add

            $cparams['Comment'] = $params['shosai'];
            $cparams['TimeStr'] = date("Y/m/d H:i:s");

            $this->callInquiryApi('apietc', $cparams);

            $this->my_secure_redirect("inquiry/etccnf/complete/");
        }
    }

    /**
     * 入力チェック
     *
     * @param unknown $params リクエストパラメータ
     * @param unknown $code 物件コード
     * @return number 0:OK,1:NG
     */
    private function checkParams($params, $code)
    {
        $error = 0;

        // 姓・名の全角文字チェック
        $key = array();
        $key[] = 'kanji_sei';
        $key[] = 'kanji_mei';
        foreach ($key as $k)
        {
            if ($this->checkZenkaku($params[$k]))
            {
                $this->_data['name_error'] = 1;
                $this->_data[$k . '_error'] = "error";
                $error = 1;
            }
        }
        // セイ・メイの全角カナ文字チェック
        $key = array();
        $key[] = 'kana_sei';
        $key[] = 'kana_mei';
        foreach ($key as $k)
        {
            if ($this->checkZenkakuKana($params[$k]))
            {
                $this->_data['name_error'] = "error";
                $this->_data[$k . '_error'] = "error";
                $error = 1;
            }
        }
        // メールアドレス・電話番号チェック
        $params['mail'] = trim($params['mail']);
        $params['tel'] = trim($params['tel']);
        if (empty($params['mail']) && empty($params['tel']))
        {
            // メールアドレス・電話番号の両方が未入力の場合
            $this->_data['renraku_empty_error'] = "error";
            $this->_data['renraku_error'] = "error";
            $error = 1;
        }
        else
        {
            if (!empty($params['mail']) && $this->checkMail($params['mail']))
            {
                // メールアドレスが入力されているかつ、入力形式が正しくない場合
                $this->_data['mail_error'] = "error";
                $this->_data['renraku_error'] = "error";
                $error = 1;
            }
            if (!empty($params['tel']) && !preg_match("/^[0-9]+$/u", $params['tel']))
            {
                // 電話番号が入力されているかつ、入力形式が正しくない場合
                $this->_data['tel_error'] = "error";
                $this->_data['renraku_error'] = "error";
                $error = 1;
            }
        }
        // 20141211 S_Add
        // 対象のチェック
        if (empty($params['target']))
        {
            // 対象のラジオボタンを選んでいない場合
            $this->_data['target_error'] = "error";
            $this->_data['target_empty_error'] = "error";
            $error = 1;
        }
        else if ($params['target'] == 1)
        {
            // 対象=アパマンショップネットワーク　フランチャイズ本部を選択した場合
            $this->_data['target1_checked'] = "checked";
        }
        else if ($params['target'] == 2)
        {
            // 対象=店舗を選択した場合
            $this->_data['target2_checked'] = "checked";

            if (empty($params['shopname']))
            {
                // 店舗名が未入力の場合
                $this->_data['target_error'] = "error";
                $this->_data['shopname_error'] = "error";
                $error = 1;
            }
            if (empty($params['staffname']))
            {
                // 担当者が未入力の場合
                $this->_data['target_error'] = "error";
                $this->_data['staffname_error'] = "error";
                $error = 1;
            }
        }
        else if ($params['target'] == 3)
        {
            // 対象=その他を選択した場合
            $this->_data['target3_checked'] = "checked";
        }
        // 20141211 E_Add
        if (empty($params['shosai']))
        {
            // ご意見・ご感想が未入力の場合
            $this->_data['shosai_error'] = "error";
            $error = 1;
        }
        else if (strlen($params['shosai']) > 400)
        {
            // ご意見・ご感想の文字数が400文字以上の場合
            $this->_data['shosai_error'] = "error";
            $error = 1;
        }
        return $error;
    }

    /**
     * SEO対策用のmetaタグに配置する文章を設定
     */
    protected function setSeoMeta()
    {
        $params = $this->getParameters();

        $subTitle = '各種お問い合わせ';

        if ($params["Step"] == 1)
        {
            $subTitle = '情報の入力';
        }
        else if ($params["Step"] == 2)
        {
            $subTitle = '入力内容確認';
        }
        else if ($params["Step"] == 'complete')
        {
            $subTitle = '送信完了';
        }

        $this->_meta_title = $subTitle . '｜賃貸マンション・アパートの賃貸情報 【アパマンショップ】';
        $this->_meta_keywords = '各種お問い合わせ｜';
    }

}
?>
